package com.ruoyi.project.schedule.task.service;

import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.project.schedule.task.domain.Task;
import com.ruoyi.project.system.user.domain.User;

import java.util.List;

public interface ITaskService {

    /**
     * 显示所有任务列表（创建者）
     * @return
     */
    List<Task> selectTaskList(Task task);

    /**
     * 显示所有任务列表（完成者）
     * @return
     */
    List<Task> selectTaskListFinished(Task task);

    /**
     * 创建任务
     * @param task
     * @return
     */
    AjaxResult insertTask(Task task);

    /**
     * 查询特定部门所有用户
     * @param user
     * @return
     */
    List<User> selectUser(User user);

    /**
     * 根据taskId查询任务信息
     * @param taskId
     * @return
     */
    Task selectByTaskId(Long taskId);

    /**
     * 批量删除任务
     * @param taskIds
     * @return
     * @throws Exception
     */
    int deleteTaskByIds(String taskIds);

    /**
     * 完成任务
     * @param task
     * @return
     */
    AjaxResult updateTaskBy(Task task);



}
